#include <stdio.h>
#include <string.h>
struct complexstruct;

typedef void (*callback_t)(struct complexstruct*);

struct complexstruct {
    const int* ptr_const;
    int* const const_ptr;
    callback_t callback;
};

void my_callback(struct complexstruct* data) {
    printf("value1: %d\n", *(data->ptr_const));  
    printf("value2: %d\n", *(data->const_ptr)); 
}

int main() {  
    int value1 = 1;
    int value2 = 2;
    
    struct complexstruct test = {&value1, &value2, NULL};
    
    test.callback = my_callback;
    test.callback(&test);
    
    return 0;
}

//	callback_t callback=my_callback;
	
//	callback(&test);
//}
